home *** CD-ROM | disk | FTP | other *** search
/ Aminet 1 (Walnut Creek) / Aminet - June 1993 [Walnut Creek].iso / usenet / sources / volume89 / aplictns / plplot.5 < prev    next >
Internet Message Format  |  1989-04-25  |  60KB

  1. Path: xanth!indri!ames!oliveb!sun!rishathra!page
  2. From: page%rishathra@Sun.COM (Bob Page)
  3. Newsgroups: comp.sources.amiga
  4. Subject: v89i090:  plplot - scientific plotting library, Part05/07
  5. Message-ID: <100942@sun.Eng.Sun.COM>
  6. Date: 25 Apr 89 05:45:52 GMT
  7. Sender: news@sun.Eng.Sun.COM
  8. Lines: 1682
  9. Approved: page@sun.com
  10.  
  11. Submitted-by: amr@dukee.egr.duke.edu (Tony Richardson)
  12. Posting-number: Volume 89, Issue 90
  13. Archive-name: applications/plplot
  14.  
  15. # This is a shell archive.
  16. # Remove anything above and including the cut line.
  17. # Then run the rest of the file through 'sh'.
  18. # Unpacked files will be owned by you and have default permissions.
  19. #----cut here-----cut here-----cut here-----cut here----#
  20. #!/bin/sh
  21. # shar: SHell ARchive
  22. # Run the following text through 'sh' to create:
  23. #    font10.c
  24. #    font11.c
  25. #    genlin.c
  26. #    global.c
  27. #    icnvrt.c
  28. #    impress.c
  29. #    laserjetii.c
  30. #    lmkfile
  31. #    movphy.c
  32. #    movwor.c
  33. #    pl3cut.c
  34. #    plabv.c
  35. #    pladv.c
  36. # This is archive 5 of a 7-part kit.
  37. # This archive created: Thu Apr 20 13:47:03 1989
  38. echo "extracting font10.c"
  39. sed 's/^X//' << \SHAR_EOF > font10.c
  40. X      short int subbuffer225[100] = {
  41. X       8511, 8508, 8378, 7992, 7735,   64, 8256, 8383, 8380, 8250,
  42. X       7992,   64, 7735, 7990, 8116, 8113, 7982, 7724, 7467, 7340,
  43. X       7342, 7473, 7860, 8246, 8761, 9148,   64, 7735, 7862, 7988,
  44. X       7985, 7854, 7724,    0,  -16, 7116, 8256,   64,    0,  -16,
  45. X       7116, 7748,   64,    0,  -16, 7116, 7240,   64,    0,  -16,
  46. X       7116, 6986, 8140, 7755, 7496, 7363, 7360, 7483, 7736, 8119,
  47. X       8375, 8760, 9019, 9152, 9155, 9032, 8779, 8396, 8140,   64,
  48. X       7883, 7624, 7491, 7488, 7611, 7864,   64, 7737, 8120, 8376,
  49. X       8761,   64, 8632, 8891, 9024, 9027, 8904, 8651,   64, 8778,
  50. X       8395, 8139, 7754,    0,  -16, 7116, 6986, 7752, 8009, 8396
  51. X      };
  52. X      short int subbuffer226[100] = {
  53. X       8375,   64, 7752, 7751, 8008, 8266, 8247, 8375,    0,  -16,
  54. X       7116, 6986, 7495, 7496, 7626, 7755, 8012, 8524, 8779, 8906,
  55. X       9032, 9030, 8900, 8641, 7479,   64, 7495, 7623, 7624, 7754,
  56. X       8011, 8523, 8778, 8904, 8902, 8772, 8513, 7351,   64, 7480,
  57. X       9144, 9143,   64, 7351, 9143,    0,  -16, 7116, 6986, 7628,
  58. X       9036, 8131,   64, 7628, 7627, 8907,   64, 8908, 8003,   64,
  59. X       8132, 8388, 8771, 9025, 9150, 9149, 9018, 8760, 8375, 7991,
  60. X       7608, 7481, 7355, 7483,   64, 8003, 8387, 8770, 9023,   64,
  61. X       8515, 8897, 9022, 9021, 8890, 8504,   64, 9020, 8761, 8376,
  62. X       7992, 7609, 7483,   64, 7864, 7482,    0,  -16, 7116, 6986
  63. X      };
  64. X      short int subbuffer227[100] = {
  65. X       8649, 8631, 8759,   64, 8780, 8759,   64, 8780, 7356, 9276,
  66. X         64, 8649, 7484,   64, 7485, 9277, 9276,    0,  -16, 7116,
  67. X       6986, 7628, 7491,   64, 7755, 7620,   64, 7628, 8908, 8907,
  68. X         64, 7755, 8907,   64, 7620, 8005, 8389, 8772, 9026, 9151,
  69. X       9149, 9018, 8760, 8375, 7991, 7608, 7481, 7355, 7483,   64,
  70. X       7491, 7619, 7876, 8388, 8771, 9024,   64, 8516, 8898, 9023,
  71. X       9021, 8890, 8504,   64, 9020, 8761, 8376, 7992, 7609, 7483,
  72. X         64, 7864, 7482,    0,  -16, 7116, 6986, 8779, 8905, 9033,
  73. X       8907, 8524, 8268, 7883, 7624, 7491, 7486, 7610, 7864, 8247,
  74. X       8375, 8760, 9018, 9149, 9150, 9025, 8771, 8388, 8260, 7875
  75. X      };
  76. X      short int subbuffer228[100] = {
  77. X       7617,   64, 8906, 8523, 8267, 7882,   64, 8011, 7752, 7619,
  78. X       7614, 7738, 8120,   64, 7612, 7865, 8248, 8376, 8761, 9020,
  79. X         64, 8504, 8890, 9021, 9022, 8897, 8515,   64, 9023, 8770,
  80. X       8387, 8259, 7874, 7615,   64, 8131, 7745, 7614,    0,  -16,
  81. X       7116, 6986, 7372, 9164, 7863,   64, 7372, 7371, 9035,   64,
  82. X       9036, 7735, 7863,    0,  -16, 7116, 6986, 8012, 7627, 7497,
  83. X       7495, 7621, 7748, 8003, 8514, 8769, 8896, 9022, 9019, 8889,
  84. X       8504, 7992, 7609, 7483, 7486, 7616, 7745, 8002, 8515, 8772,
  85. X       8901, 9031, 9033, 8907, 8524, 8012,   64, 7755, 7625, 7623,
  86. X       7749, 8004, 8515, 8770, 9024, 9150, 9147, 9017, 8888, 8503
  87. X      };
  88. X      short int subbuffer229[100] = {
  89. X       7991, 7608, 7481, 7355, 7358, 7488, 7746, 8003, 8516, 8773,
  90. X       8903, 8905, 8779,   64, 8906, 8523, 8011, 7626,   64, 7482,
  91. X       7864,   64, 8632, 9018,    0,  -16, 7116, 6986, 8898, 8640,
  92. X       8255, 8127, 7744, 7490, 7365, 7366, 7497, 7755, 8140, 8268,
  93. X       8651, 8905, 9029, 9024, 8891, 8632, 8247, 7991, 7608, 7482,
  94. X       7610, 7736,   64, 8901, 8770, 8384,   64, 8900, 8641, 8256,
  95. X       8128, 7745, 7492,   64, 8000, 7618, 7493, 7494, 7625, 8011,
  96. X         64, 7495, 7754, 8139, 8267, 8650, 8903,   64, 8395, 8777,
  97. X       8901, 8896, 8763, 8504,   64, 8633, 8248, 7992, 7609,    0,
  98. X        -16, 7116, 7622, 8250, 8121, 8120, 8247, 8375, 8504, 8505
  99. X      };
  100. X      short int subbuffer230[100] = {
  101. X       8378, 8250,   64, 8249, 8248, 8376, 8377, 8249,    0,  -16,
  102. X       7116, 7622, 8504, 8375, 8247, 8120, 8121, 8250, 8378, 8505,
  103. X       8502, 8372, 8115,   64, 8249, 8248, 8376, 8377, 8249,   64,
  104. X       8375, 8502,   64, 8504, 8372,    0,  -16, 7116, 7622, 8261,
  105. X       8132, 8131, 8258, 8386, 8515, 8516, 8389, 8261,   64, 8260,
  106. X       8259, 8387, 8388, 8260,   64, 8250, 8121, 8120, 8247, 8375,
  107. X       8504, 8505, 8378, 8250,   64, 8249, 8248, 8376, 8377, 8249,
  108. X          0,  -16, 7116, 7622, 8261, 8132, 8131, 8258, 8386, 8515,
  109. X       8516, 8389, 8261,   64, 8260, 8259, 8387, 8388, 8260,   64,
  110. X       8504, 8375, 8247, 8120, 8121, 8250, 8378, 8505, 8502, 8372
  111. X      };
  112. X      short int subbuffer231[100] = {
  113. X       8115,   64, 8249, 8248, 8376, 8377, 8249,   64, 8375, 8502,
  114. X         64, 8504, 8372,    0,  -16, 7116, 7622, 8268, 8254, 8382,
  115. X         64, 8268, 8396, 8382,   64, 8250, 8121, 8120, 8247, 8375,
  116. X       8504, 8505, 8378, 8250,   64, 8249, 8248, 8376, 8377, 8249,
  117. X          0,  -16, 7116, 7114, 7495, 7496, 7626, 7755, 8140, 8524,
  118. X       8907, 9034, 9160, 9158, 9028, 8899, 8642, 8257,   64, 7495,
  119. X       7623, 7624, 7754, 8139, 8523, 8906, 9032, 9030, 8900, 8643,
  120. X       8258,   64, 7625, 8011,   64, 8651, 9033,   64, 9029, 8514,
  121. X         64, 8258, 8254, 8382, 8386,   64, 8250, 8121, 8120, 8247,
  122. X       8375, 8504, 8505, 8378, 8250,   64, 8249, 8248, 8376, 8377
  123. X      };
  124. X      short int subbuffer232[100] = {
  125. X       8249,    0,  -16, 7116, 7622, 8524, 8267, 8137, 8134, 8261,
  126. X       8389, 8518, 8519, 8392, 8264, 8135,   64, 8263, 8262, 8390,
  127. X       8391, 8263,   64, 8267, 8135,   64, 8137, 8264,    0,  -16,
  128. X       7116, 7622, 8522, 8393, 8265, 8138, 8139, 8268, 8396, 8523,
  129. X       8520, 8390, 8133,   64, 8267, 8266, 8394, 8395, 8267,   64,
  130. X       8393, 8520,   64, 8522, 8390,    0,  -16, 7116, 6733, 9541,
  131. X       9285, 9028, 8898, 8636, 8506, 8377, 8120, 7608, 7353, 7227,
  132. X       7229, 7359, 7488, 8131, 8389, 8519, 8521, 8395, 8140, 8012,
  133. X       7755, 7625, 7623, 7748, 8001, 8635, 9016, 9271, 9527,   64,
  134. X       9541, 9540, 9284, 9027,   64, 9156, 9026, 8764, 8634, 8376
  135. X      };
  136. X      short int subbuffer233[100] = {
  137. X       8119, 7607, 7352, 7225, 7099, 7101, 7231, 7489, 8132, 8261,
  138. X       8391, 8393, 8267,   64, 8394, 8139, 8011, 7754,   64, 7883,
  139. X       7753, 7751, 7876, 8129, 8763, 9017, 9272, 9528, 9527,    0,
  140. X        -16, 7116, 7114, 8272, 8243, 8371,   64, 8272, 8400, 8371,
  141. X         64, 8905, 9161, 8907, 8524, 8140, 7755, 7497, 7495, 7621,
  142. X       7748, 8768, 8895, 9021, 9019, 8889, 8504, 8120, 7865, 7738,
  143. X         64, 8905, 8778, 8523, 8139, 7754, 7625, 7623, 7749, 8769,
  144. X       9023, 9149, 9147, 9017, 8888, 8503, 8119, 7736, 7482, 7738,
  145. X         64, 9018, 8632,    0,  -16, 7116, 6860, 9424, 7088, 7216,
  146. X         64, 9424, 9552, 7216,    0,  -16, 7116, 7367, 8656, 8398
  147. X      };
  148. X      short int subbuffer234[100] = {
  149. X       8139, 7879, 7746, 7742, 7865, 8117, 8370, 8624, 8752,   64,
  150. X       8656, 8784, 8526, 8267, 8007, 7874, 7870, 7993, 8245, 8498,
  151. X       8752,    0,  -16, 7116, 7367, 7760, 8014, 8267, 8519, 8642,
  152. X       8638, 8505, 8245, 7986, 7728, 7856,   64, 7760, 7888, 8142,
  153. X       8395, 8647, 8770, 8766, 8633, 8373, 8114, 7856,    0,  -16,
  154. X       7116, 7240, 8268, 8139, 8385, 8256,   64, 8268, 8256,   64,
  155. X       8268, 8395, 8129, 8256,   64, 7625, 7753, 8771, 8899,   64,
  156. X       7625, 8899,   64, 7625, 7624, 8900, 8899,   64, 8905, 8777,
  157. X       7747, 7619,   64, 8905, 7619,   64, 8905, 8904, 7620, 7619,
  158. X          0,  -16, 7116, 6733, 7233, 9409, 9408,   64, 7233, 7232
  159. X      };
  160. X      short int subbuffer235[100] = {
  161. X       9408,    0,  -16, 7116, 6733, 8265, 8248, 8376,   64, 8265,
  162. X       8393, 8376,   64, 7233, 9409, 9408,   64, 7233, 7232, 9408,
  163. X          0,  -16, 7116, 6733, 7237, 9413, 9412,   64, 7237, 7236,
  164. X       9412,   64, 7229, 9405, 9404,   64, 7229, 7228, 9404,    0,
  165. X        -16, 7116, 7749, 8396, 8267, 8261,   64, 8395, 8261,   64,
  166. X       8396, 8523, 8261,    0,  -16, 7116, 7113, 7756, 7627, 7621,
  167. X         64, 7755, 7621,   64, 7756, 7883, 7621,   64, 8908, 8779,
  168. X       8773,   64, 8907, 8773,   64, 8908, 9035, 8773,    0,  -16,
  169. X       7116, 7367, 8140, 7883, 7753, 7751, 7877, 8132, 8388, 8645,
  170. X       8775, 8777, 8651, 8396, 8140,   64, 8140, 7753, 7877, 8388
  171. X      };
  172. X      short int subbuffer236[100] = {
  173. X       8775, 8651, 8140,   64, 8396, 7883, 7751, 8132, 8645, 8777,
  174. X       8396,    0,  -16, 7116, 8256,   64,    0,  -16, 7116, 7748,
  175. X         64,    0,  -16, 7116, 7240,   64,    0,  -16, 7116, 6987,
  176. X       8524, 8139, 7881, 7622, 7491, 7359, 7356, 7481, 7608, 7863,
  177. X       8119, 8504, 8762, 9021, 9152, 9284, 9287, 9162, 9035, 8780,
  178. X       8524,   64, 8524, 8267, 8009, 7750, 7619, 7487, 7484, 7609,
  179. X       7863,   64, 8119, 8376, 8634, 8893, 9024, 9156, 9159, 9034,
  180. X       8780,    0,  -16, 7116, 6987, 8520, 7863,   64, 8780, 7991,
  181. X         64, 8780, 8393, 8007, 7750,   64, 8649, 8135, 7750,    0,
  182. X        -16, 7116, 6987, 7880, 8007, 7878, 7751, 7752, 7882, 8011
  183. X      };
  184. X      short int subbuffer237[100] = {
  185. X       8396, 8780, 9163, 9289, 9287, 9157, 8899, 8513, 7999, 7613,
  186. X       7355, 7095,   64, 8780, 9035, 9161, 9159, 9029, 8771, 7999,
  187. X         64, 7225, 7354, 7610, 8248, 8632, 8889, 9019,   64, 7610,
  188. X       8247, 8631, 8888, 9019,    0,  -16, 7116, 6987, 7880, 8007,
  189. X       7878, 7751, 7752, 7882, 8011, 8396, 8780, 9163, 9289, 9287,
  190. X       9157, 8771, 8386,   64, 8780, 9035, 9161, 9159, 9029, 8771,
  191. X         64, 8130, 8386, 8769, 8896, 9022, 9019, 8889, 8760, 8375,
  192. X       7863, 7480, 7353, 7227, 7228, 7357, 7484, 7355,   64, 8386,
  193. X       8641, 8768, 8894, 8891, 8761, 8632, 8375,    0,  -16, 7116,
  194. X       6987, 9035, 8247,   64, 9164, 8375,   64, 9164, 7229, 9277
  195. X      };
  196. X      short int subbuffer238[100] = {
  197. X          0,  -16, 7116, 6987, 8140, 7490,   64, 8140, 9420,   64,
  198. X       8139, 8779, 9420,   64, 7490, 7619, 8004, 8388, 8771, 8898,
  199. X       9024, 9021, 8890, 8632, 8247, 7863, 7480, 7353, 7227, 7228,
  200. X       7357, 7484, 7355,   64, 8388, 8643, 8770, 8896, 8893, 8762,
  201. X       8504, 8247,    0,  -16, 7116, 6987, 9161, 9032, 9159, 9288,
  202. X       9289, 9163, 8908, 8524, 8139, 7881, 7622, 7491, 7359, 7355,
  203. X       7481, 7608, 7863, 8247, 8632, 8890, 9020, 9023, 8897, 8770,
  204. X       8515, 8131, 7874, 7616, 7486,   64, 8524, 8267, 8009, 7750,
  205. X       7619, 7487, 7482, 7608,   64, 8247, 8504, 8762, 8892, 8896,
  206. X       8770,    0,  -16, 7116, 6987, 7756, 7494,   64, 9420, 9289
  207. X      };
  208. X      short int subbuffer239[100] = {
  209. X       9030, 8384, 8125, 7995, 7863,   64, 9030, 8256, 7997, 7867,
  210. X       7735,   64, 7625, 8012, 8268, 8905,   64, 7754, 8011, 8267,
  211. X       8905, 9161, 9290, 9420,    0,  -16, 7116, 6987, 8396, 8011,
  212. X       7882, 7752, 7749, 7875, 8130, 8514, 9027, 9156, 9286, 9289,
  213. X       9163, 8780, 8396,   64, 8396, 8139, 8010, 7880, 7877, 8003,
  214. X       8130,   64, 8514, 8899, 9028, 9158, 9161, 9035, 8780,   64,
  215. X       8130, 7617, 7359, 7229, 7226, 7352, 7735, 8247, 8760, 8889,
  216. X       9019, 9022, 8896, 8769, 8514,   64, 8130, 7745, 7487, 7357,
  217. X       7354, 7480, 7735,   64, 8247, 8632, 8761, 8891, 8895, 8769,
  218. X          0,  -16, 7116, 6987, 9157, 9027, 8769, 8512, 8128, 7873
  219. X      };
  220. X      short int subbuffer240[100] = {
  221. X       7746, 7620, 7623, 7753, 8011, 8396, 8780, 9035, 9162, 9288,
  222. X       9284, 9152, 9021, 8762, 8504, 8119, 7735, 7480, 7354, 7355,
  223. X       7484, 7611, 7482,   64, 7873, 7747, 7751, 7881, 8139, 8396,
  224. X         64, 9035, 9161, 9156, 9024, 8893, 8634, 8376, 8119,    0,
  225. X        -16, 7116, 7622, 7993, 7864, 7991, 8120, 7993,    0,  -16,
  226. X       7116, 7622, 7991, 7864, 7993, 8120, 8119, 7989, 7731,    0,
  227. X        -16, 7116, 7622, 8389, 8260, 8387, 8516, 8389,   64, 7993,
  228. X       7864, 7991, 8120,    0,  -16, 7116, 7622, 8389, 8260, 8387,
  229. X       8516, 8389,   64, 7991, 7864, 7993, 8120, 8119, 7989, 7731,
  230. X          0,  -16, 7116, 7622, 8652, 8523, 8255,   64, 8651, 8255
  231. X      };
  232. X      short int subbuffer241[100] = {
  233. X         64, 8652, 8779, 8255,   64, 7993, 7864, 7991, 8120, 7993,
  234. X          0,  -16, 7116, 6987, 7880, 8007, 7878, 7751, 7752, 7882,
  235. X       8011, 8396, 8908, 9291, 9417, 9415, 9285, 9156, 8386, 8129,
  236. X       8127, 8254, 8510,   64, 8908, 9163, 9289, 9287, 9157, 9028,
  237. X       8771,   64, 7993, 7864, 7991, 8120, 7993,    0,  -16, 7116,
  238. X       7622, 8780, 8522, 8392, 8391, 8518, 8647, 8520,    0,  -16,
  239. X       7116, 7622, 8650, 8523, 8652, 8779, 8778, 8648, 8390,    0,
  240. X        -16, 7116, 6605, 9540, 9411, 9538, 9667, 9668, 9541, 9413,
  241. X       9156, 8898, 8250, 7992, 7735, 7351, 6968, 6842, 6844, 6974,
  242. X       7103, 7360, 8002, 8259, 8517, 8647, 8649, 8523, 8268, 8011
  243. X      };
  244. X      short int subbuffer242[100] = {
  245. X       7881, 7878, 8000, 8125, 8378, 8632, 8887, 9143, 9273, 9274,
  246. X         64, 7351, 7096, 6970, 6972, 7102, 7231, 8002,   64, 7878,
  247. X       8001, 8126, 8379, 8633, 8888, 9144, 9273,    0,  -16, 7116,
  248. X       6987, 8528, 7475,   64, 9168, 8115,   64, 9288, 9159, 9286,
  249. X       9415, 9416, 9290, 9163, 8780, 8268, 7883, 7625, 7623, 7749,
  250. X       7876, 8768, 9022,   64, 7623, 7877, 8769, 8896, 9022, 9019,
  251. X       8889, 8760, 8375, 7863, 7480, 7353, 7227, 7228, 7357, 7484,
  252. X       7355,    0,  -16, 7116, 6859, 9936, 6576,    0,  -16, 7116,
  253. X       7368, 9296, 8781, 8394, 8135, 7875, 7742, 7738, 7861, 7986,
  254. X       8112,   64, 8781, 8393, 8133, 8002, 7869, 7864, 7987, 8112
  255. X      };
  256. X      short int subbuffer243[100] = {
  257. X          0,  -16, 7116, 7239, 8400, 8526, 8651, 8774, 8770, 8637,
  258. X       8377, 8118, 7731, 7216,   64, 8400, 8525, 8648, 8643, 8510,
  259. X       8379, 8119, 7731,    0,  -16, 7116, 7241, 8524, 8512,   64,
  260. X       7881, 9155,   64, 9161, 7875,    0,  -16, 7116, 6605, 7104,
  261. X       9408,    0,  -16, 7116, 6605, 8265, 8247,   64, 7104, 9408,
  262. X          0,  -16, 7116, 6605, 7107, 9411,   64, 7101, 9405,    0,
  263. X        -16, 7116, 7749, 8652, 8389,   64, 8780, 8389,    0,  -16,
  264. X       7116, 7113, 8012, 7749,   64, 8140, 7749,   64, 9164, 8901,
  265. X         64, 9292, 8901,    0,  -16, 7116, 7368, 8396, 8139, 8009,
  266. X       8007, 8133, 8388, 8644, 8901, 9031, 9033, 8907, 8652, 8396
  267. X      };
  268. X      short int subbuffer244[100] = {
  269. X          0,  -16, 7116, 6986, 8268, 7351,   64, 8268, 9143,   64,
  270. X       8265, 9015,   64, 7613, 8765,   64, 7095, 7863,   64, 8631,
  271. X       9399,    0,  -16, 7116, 6859, 7500, 7479,   64, 7628, 7607,
  272. X         64, 7116, 9164, 9158, 9036,   64, 7618, 8642, 9025, 9152,
  273. X       9278, 9275, 9145, 9016, 8631, 7095,   64, 8642, 8897, 9024,
  274. X       9150, 9147, 9017, 8888, 8631,    0,  -16, 7116, 6859, 7500,
  275. X       7479,   64, 7628, 7607,   64, 7116, 8652, 9035, 9162, 9288,
  276. X       9286, 9156, 9027, 8642,   64, 8652, 8907, 9034, 9160, 9158,
  277. X       9028, 8899, 8642,   64, 7618, 8642, 9025, 9152, 9278, 9275,
  278. X       9145, 9016, 8631, 7095,   64, 8642, 8897, 9024, 9150, 9147
  279. X      };
  280. X      short int subbuffer245[100] = {
  281. X       9017, 8888, 8631,    0,  -16, 7116, 7113, 7756, 7735,   64,
  282. X       7884, 7863,   64, 7372, 9292, 9286, 9164,   64, 7351, 8247,
  283. X          0,  -16, 7116, 6732, 7756, 7750, 7614, 7482, 7352, 7223,
  284. X         64, 9036, 9015,   64, 9164, 9143,   64, 7372, 9548,   64,
  285. X       6839, 9527,   64, 6839, 6832,   64, 6967, 6832,   64, 9399,
  286. X       9520,   64, 9527, 9520,    0,  -16, 7116, 6858, 7500, 7479,
  287. X         64, 7628, 7607,   64, 8390, 8382,   64, 7116, 9164, 9158,
  288. X       9036,   64, 7618, 8386,   64, 7095, 9143, 9149, 9015,    0,
  289. X        -16, 7116, 6352, 8268, 8247,   64, 8396, 8375,   64, 7884,
  290. X       8780,   64, 6859, 6986, 6857, 6730, 6731, 6860, 6988, 7115
  291. X      };
  292. X      short int subbuffer246[100] = {
  293. X       7241, 7365, 7491, 7746, 8898, 9155, 9285, 9417, 9547, 9676,
  294. X       9804, 9931, 9930, 9801, 9674, 9803,   64, 7746, 7489, 7359,
  295. X       7226, 7096, 6967,   64, 7746, 7617, 7487, 7354, 7224, 7095,
  296. X       6839, 6712, 6586,   64, 8898, 9153, 9279, 9402, 9528, 9655,
  297. X         64, 8898, 9025, 9151, 9274, 9400, 9527, 9783, 9912,10042,
  298. X         64, 7863, 8759,    0,  -16, 7116, 6986, 7497, 7372, 7366,
  299. X       7497, 7755, 8012, 8524, 8907, 9033, 9030, 8900, 8515, 8131,
  300. X         64, 8524, 8779, 8905, 8902, 8772, 8515,   64, 8515, 8770,
  301. X       9024, 9150, 9147, 9017, 8888, 8503, 7863, 7608, 7481, 7355,
  302. X       7356, 7485, 7612, 7483,   64, 8897, 9022, 9019, 8889, 8760
  303. X      };
  304. X      short int subbuffer247[100] = {
  305. X       8503,    0,  -16, 7116, 6732, 7372, 7351,   64, 7500, 7479,
  306. X         64, 9036, 9015,   64, 9164, 9143,   64, 6988, 7884,   64,
  307. X       8652, 9548,   64, 9034, 7481,   64, 6967, 7863,   64, 8631,
  308. X       9527,    0,  -16, 7116, 6732, 7372, 7351,   64, 7500, 7479,
  309. X         64, 9036, 9015,   64, 9164, 9143,   64, 6988, 7884,   64,
  310. X       8652, 9548,   64, 9034, 7481,   64, 6967, 7863,   64, 8631,
  311. X       9527,   64, 7762, 7763, 7635, 7634, 7760, 8015, 8527, 8784,
  312. X       8914,    0,  -16, 7116, 6732, 7372, 7351,   64, 7500, 7479,
  313. X         64, 6988, 7884,   64, 7490, 8386, 8643, 8773, 8905, 9035,
  314. X       9164, 9292, 9419, 9418, 9289, 9162, 9291,   64, 8386, 8641
  315. X      };
  316. X      short int subbuffer248[100] = {
  317. X       8767, 8890, 9016, 9143,   64, 8386, 8513, 8639, 8762, 8888,
  318. X       9015, 9271, 9400, 9530,   64, 6967, 7863,    0,  -16, 7116,
  319. X       6604, 7628, 7622, 7486, 7354, 7224, 7095, 6967, 6840, 6841,
  320. X       6970, 7097, 6968,   64, 9036, 9015,   64, 9164, 9143,   64,
  321. X       7244, 9548,   64, 8631, 9527,    0,  -16, 7116, 6733, 7372,
  322. X       7351,   64, 7500, 8250,   64, 7372, 8247,   64, 9164, 8247,
  323. X         64, 9164, 9143,   64, 9292, 9271,   64, 6988, 7500,   64,
  324. X       9164, 9676,   64, 6967, 7735,   64, 8759, 9655,    0,  -16,
  325. X       7116, 6732, 7372, 7351,   64, 7500, 7479,   64, 9036, 9015,
  326. X         64, 9164, 9143,   64, 6988, 7884,   64, 8652, 9548,   64
  327. X      };
  328. X      short int subbuffer249[100] = {
  329. X       7490, 9026,   64, 6967, 7863,   64, 8631, 9527,    0,  -16,
  330. X       7116, 6859, 8140, 7755, 7497, 7367, 7235, 7232, 7356, 7482,
  331. X       7736, 8119, 8375, 8760, 9018, 9148, 9280, 9283, 9159, 9033,
  332. X       8779, 8396, 8140,   64, 8140, 7883, 7625, 7495, 7363, 7360,
  333. X       7484, 7610, 7864, 8119,   64, 8375, 8632, 8890, 9020, 9152,
  334. X       9155, 9031, 8905, 8651, 8396,    0,  -16, 7116, 6732, 7372,
  335. X       7351,   64, 7500, 7479,   64, 9036, 9015,   64, 9164, 9143,
  336. X         64, 6988, 9548,   64, 6967, 7863,   64, 8631, 9527,    0,
  337. X        -16, 7116, 6859, 7500, 7479,   64, 7628, 7607,   64, 7116,
  338. X       8652, 9035, 9162, 9288, 9285, 9155, 9026, 8641, 7617,   64
  339. X      };
  340. SHAR_EOF
  341. echo "extracting font11.c"
  342. sed 's/^X//' << \SHAR_EOF > font11.c
  343. X      short int subbuffer250[100] = {
  344. X       8652, 8907, 9034, 9160, 9157, 9027, 8898, 8641,   64, 7095,
  345. X       7991,    0,  -16, 7116, 6858, 9033, 9158, 9164, 9033, 8779,
  346. X       8396, 8140, 7755, 7497, 7367, 7236, 7231, 7356, 7482, 7736,
  347. X       8119, 8375, 8760, 9018, 9148,   64, 8140, 7883, 7625, 7495,
  348. X       7364, 7359, 7484, 7610, 7864, 8119,    0,  -16, 7116, 7114,
  349. X       8268, 8247,   64, 8396, 8375,   64, 7500, 7366, 7372, 9292,
  350. X       9286, 9164,   64, 7863, 8759,    0,  -16, 7116, 6987, 7372,
  351. X       8252,   64, 7500, 8380,   64, 9292, 8380, 8121, 7992, 7735,
  352. X       7607, 7480, 7481, 7610, 7737, 7608,   64, 7116, 7884,   64,
  353. X       8780, 9548,    0,  -16, 7116, 6733, 8268, 8247,   64, 8396
  354. X      };
  355. X      short int subbuffer251[100] = {
  356. X       8375,   64, 7884, 8780,   64, 8009, 7496, 7238, 7107, 7104,
  357. X       7229, 7483, 7994, 8634, 9147, 9405, 9536, 9539, 9414, 9160,
  358. X       8649, 8009,   64, 8009, 7624, 7366, 7235, 7232, 7357, 7611,
  359. X       7994,   64, 8634, 9019, 9277, 9408, 9411, 9286, 9032, 8649,
  360. X         64, 7863, 8759,    0,  -16, 7116, 6986, 7372, 9015,   64,
  361. X       7500, 9143,   64, 9164, 7351,   64, 7116, 7884,   64, 8652,
  362. X       9420,   64, 7095, 7863,   64, 8631, 9399,    0,  -16, 7116,
  363. X       6732, 7372, 7351,   64, 7500, 7479,   64, 9036, 9015,   64,
  364. X       9164, 9143,   64, 6988, 7884,   64, 8652, 9548,   64, 6967,
  365. X       9527,   64, 9399, 9520,   64, 9527, 9520,    0,  -16, 7116
  366. X      };
  367. X      short int subbuffer252[100] = {
  368. X       6731, 7372, 7361, 7487, 7870, 8254, 8639, 8897,   64, 7500,
  369. X       7489, 7615, 7870,   64, 8908, 8887,   64, 9036, 9015,   64,
  370. X       6988, 7884,   64, 8524, 9420,   64, 8503, 9399,    0,  -16,
  371. X       7116, 6225, 6860, 6839,   64, 6988, 6967,   64, 8268, 8247,
  372. X         64, 8396, 8375,   64, 9676, 9655,   64, 9804, 9783,   64,
  373. X       6476, 7372,   64, 7884, 8780,   64, 9292,10188,   64, 6455,
  374. X      10167,    0,  -16, 7116, 6225, 6860, 6839,   64, 6988, 6967,
  375. X         64, 8268, 8247,   64, 8396, 8375,   64, 9676, 9655,   64,
  376. X       9804, 9783,   64, 6476, 7372,   64, 7884, 8780,   64, 9292,
  377. X      10188,   64, 6455,10167,   64,10039,10160,   64,10167,10160
  378. X      };
  379. X      short int subbuffer253[100] = {
  380. X          0,  -16, 7116, 6734, 8012, 7991,   64, 8140, 8119,   64,
  381. X       7116, 6982, 6988, 8524,   64, 8130, 9026, 9409, 9536, 9662,
  382. X       9659, 9529, 9400, 9015, 7607,   64, 9026, 9281, 9408, 9534,
  383. X       9531, 9401, 9272, 9015,    0,  -16, 7116, 6351, 6988, 6967,
  384. X         64, 7116, 7095,   64, 6604, 7500,   64, 7106, 8002, 8385,
  385. X       8512, 8638, 8635, 8505, 8376, 7991, 6583,   64, 8002, 8257,
  386. X       8384, 8510, 8507, 8377, 8248, 7991,   64, 9420, 9399,   64,
  387. X       9548, 9527,   64, 9036, 9932,   64, 9015, 9911,    0,  -16,
  388. X       7116, 6987, 7628, 7607,   64, 7756, 7735,   64, 7244, 8140,
  389. X         64, 7746, 8642, 9025, 9152, 9278, 9275, 9145, 9016, 8631
  390. X      };
  391. X      short int subbuffer254[100] = {
  392. X       7223,   64, 8642, 8897, 9024, 9150, 9147, 9017, 8888, 8631,
  393. X          0,  -16, 7116, 6987, 7497, 7372, 7366, 7497, 7755, 8140,
  394. X       8396, 8779, 9033, 9159, 9284, 9279, 9148, 9018, 8760, 8375,
  395. X       7991, 7608, 7481, 7355, 7356, 7485, 7612, 7483,   64, 8396,
  396. X       8651, 8905, 9031, 9156, 9151, 9020, 8890, 8632, 8375,   64,
  397. X       8002, 9154,    0,  -16, 7116, 6352, 6988, 6967,   64, 7116,
  398. X       7095,   64, 6604, 7500,   64, 6583, 7479,   64, 8780, 8395,
  399. X       8137, 8007, 7875, 7872, 7996, 8122, 8376, 8759, 9015, 9400,
  400. X       9658, 9788, 9920, 9923, 9799, 9673, 9419, 9036, 8780,   64,
  401. X       8780, 8523, 8265, 8135, 8003, 8000, 8124, 8250, 8504, 8759
  402. X      };
  403. X      short int subbuffer255[100] = {
  404. X         64, 9015, 9272, 9530, 9660, 9792, 9795, 9671, 9545, 9291,
  405. X       9036,   64, 7106, 7874,    0,  -16, 7116, 6859, 8908, 8887,
  406. X         64, 9036, 9015,   64, 9420, 7884, 7499, 7370, 7240, 7238,
  407. X       7364, 7491, 7874, 8898,   64, 7884, 7627, 7498, 7368, 7366,
  408. X       7492, 7619, 7874,   64, 8258, 8001, 7872, 7481, 7352, 7224,
  409. X       7097,   64, 8001, 7871, 7608, 7479, 7223, 7097, 7098,   64,
  410. X       8503, 9399,    0,  -16, 7116, 7115, 7747, 7746, 7618, 7619,
  411. X       7748, 8005, 8517, 8772, 8899, 9025, 9018, 9144, 9271,   64,
  412. X       8899, 8890, 9016, 9271, 9399,   64, 8897, 8768, 7999, 7614,
  413. X       7484, 7482, 7608, 7991, 8375, 8632, 8890,   64, 7999, 7742
  414. X      };
  415. X      short int subbuffer256[100] = {
  416. X       7612, 7610, 7736, 7991,    0,  -16, 7116, 6986, 9036, 8907,
  417. X       8137, 7751, 7492, 7361, 7357, 7482, 7736, 8119, 8375, 8760,
  418. X       9018, 9149, 9151, 9026, 8772, 8389, 8133, 7748, 7490, 7359,
  419. X         64, 9036, 8906, 8649, 8136, 7750, 7492,   64, 8133, 7876,
  420. X       7618, 7487, 7485, 7610, 7864, 8119,   64, 8375, 8632, 8890,
  421. X       9021, 9023, 8898, 8644, 8389,    0,  -16, 7116, 6986, 7621,
  422. X       7607,   64, 7749, 7735,   64, 7237, 8645, 9028, 9154, 9153,
  423. X       9023, 8638,   64, 8645, 8900, 9026, 9025, 8895, 8638,   64,
  424. X       7742, 8638, 9021, 9147, 9146, 9016, 8631, 7223,   64, 8638,
  425. X       8893, 9019, 9018, 8888, 8631,    0,  -16, 7116, 6984, 7621
  426. X      };
  427. X      short int subbuffer257[100] = {
  428. X       7607,   64, 7749, 7735,   64, 7237, 9029, 9024, 8901,   64,
  429. X       7223, 8119,    0,  -16, 7116, 6731, 7749, 7745, 7611, 7480,
  430. X       7351,   64, 8901, 8887,   64, 9029, 9015,   64, 7365, 9413,
  431. X         64, 7095, 6962, 6967, 9399, 9394, 9271,    0,  -16, 7116,
  432. X       6985, 7487, 9023, 9025, 8899, 8772, 8517, 8133, 7748, 7490,
  433. X       7359, 7357, 7482, 7736, 8119, 8375, 8760, 9018,   64, 8895,
  434. X       8898, 8772,   64, 8133, 7876, 7618, 7487, 7485, 7610, 7864,
  435. X       8119,    0,  -16, 7116, 6606, 8261, 8247,   64, 8389, 8375,
  436. X         64, 7877, 8773,   64, 7236, 7107, 6980, 7109, 7237, 7364,
  437. X       7616, 7743, 7998, 8638, 8895, 9024, 9284, 9413, 9541, 9668
  438. X      };
  439. X      short int subbuffer258[100] = {
  440. X       9539, 9412,   64, 7998, 7741, 7612, 7352, 7223,   64, 7998,
  441. X       7740, 7480, 7351, 7095, 6968, 6842,   64, 8638, 8893, 9020,
  442. X       9272, 9399,   64, 8638, 8892, 9144, 9271, 9527, 9656, 9786,
  443. X         64, 7863, 8759,    0,  -16, 7116, 7113, 7619, 7493, 7489,
  444. X       7619, 7748, 8005, 8517, 8900, 9026, 9025, 8895, 8510,   64,
  445. X       8517, 8772, 8898, 8897, 8767, 8510,   64, 8126, 8510, 8893,
  446. X       9019, 9018, 8888, 8503, 7991, 7608, 7482, 7483, 7612, 7739,
  447. X       7610,   64, 8510, 8765, 8891, 8890, 8760, 8503,    0,  -16,
  448. X       7116, 6859, 7493, 7479,   64, 7621, 7607,   64, 8901, 8887,
  449. X         64, 9029, 9015,   64, 7109, 8005,   64, 8517, 9413,   64
  450. X      };
  451. X      short int subbuffer259[100] = {
  452. X       7095, 7991,   64, 8503, 9399,   64, 8900, 7608,    0,  -16,
  453. X       7116, 6859, 7493, 7479,   64, 7621, 7607,   64, 8901, 8887,
  454. X         64, 9029, 9015,   64, 7109, 8005,   64, 8517, 9413,   64,
  455. X       7095, 7991,   64, 8503, 9399,   64, 8900, 7608,   64, 7883,
  456. X       7884, 7756, 7755, 7881, 8136, 8392, 8649, 8779,    0,  -16,
  457. X       7116, 6986, 7621, 7607,   64, 7749, 7735,   64, 7237, 8133,
  458. X         64, 7742, 7998, 8383, 8512, 8772, 8901, 9029, 9156, 9027,
  459. X       8900,   64, 7998, 8381, 8508, 8760, 8887,   64, 7998, 8253,
  460. X       8380, 8632, 8759, 9015, 9144, 9274,   64, 7223, 8119,    0,
  461. X        -16, 7116, 6859, 7749, 7745, 7611, 7480, 7351, 7223, 7096
  462. X      };
  463. X      short int subbuffer260[100] = {
  464. X       7225, 7352,   64, 8901, 8887,   64, 9029, 9015,   64, 7365,
  465. X       9413,   64, 8503, 9399,    0,  -16, 7116, 6860, 7493, 7479,
  466. X         64, 7493, 8247,   64, 7621, 8249,   64, 9029, 8247,   64,
  467. X       9029, 9015,   64, 9157, 9143,   64, 7109, 7621,   64, 9029,
  468. X       9541,   64, 7095, 7863,   64, 8631, 9527,    0,  -16, 7116,
  469. X       6859, 7493, 7479,   64, 7621, 7607,   64, 8901, 8887,   64,
  470. X       9029, 9015,   64, 7109, 8005,   64, 8517, 9413,   64, 7614,
  471. X       8894,   64, 7095, 7991,   64, 8503, 9399,    0,  -16, 7116,
  472. X       6986, 8133, 7748, 7490, 7359, 7357, 7482, 7736, 8119, 8375,
  473. X       8760, 9018, 9149, 9151, 9026, 8772, 8389, 8133,   64, 8133
  474. X      };
  475. X      short int subbuffer261[100] = {
  476. X       7876, 7618, 7487, 7485, 7610, 7864, 8119,   64, 8375, 8632,
  477. X       8890, 9021, 9023, 8898, 8644, 8389,    0,  -16, 7116, 6859,
  478. X       7493, 7479,   64, 7621, 7607,   64, 8901, 8887,   64, 9029,
  479. X       9015,   64, 7109, 9413,   64, 7095, 7991,   64, 8503, 9399,
  480. X          0,  -16, 7116, 6858, 7493, 7472,   64, 7621, 7600,   64,
  481. X       7618, 7876, 8133, 8389, 8772, 9026, 9151, 9149, 9018, 8760,
  482. X       8375, 8119, 7864, 7610,   64, 8389, 8644, 8898, 9023, 9021,
  483. X       8890, 8632, 8375,   64, 7109, 7621,   64, 7088, 7984,    0,
  484. X        -16, 7116, 6985, 8898, 8769, 8896, 9025, 9026, 8772, 8517,
  485. X       8133, 7748, 7490, 7359, 7357, 7482, 7736, 8119, 8375, 8760
  486. X      };
  487. X      short int subbuffer262[100] = {
  488. X       9018,   64, 8133, 7876, 7618, 7487, 7485, 7610, 7864, 8119,
  489. X          0,  -16, 7116, 7114, 8261, 8247,   64, 8389, 8375,   64,
  490. X       7621, 7488, 7493, 9157, 9152, 9029,   64, 7863, 8759,    0,
  491. X        -16, 7116, 7113, 7493, 8247,   64, 7621, 8249,   64, 9029,
  492. X       8247, 7987, 7729, 7472, 7344, 7217, 7346, 7473,   64, 7237,
  493. X       8005,   64, 8517, 9285,    0,  -16, 7116, 6987, 8268, 8240,
  494. X         64, 8396, 8368,   64, 7884, 8396,   64, 8258, 8132, 8005,
  495. X       7749, 7492, 7361, 7355, 7480, 7735, 7991, 8120, 8250,   64,
  496. X       7749, 7620, 7489, 7483, 7608, 7735,   64, 8901, 9028, 9153,
  497. X       9147, 9016, 8887,   64, 8386, 8516, 8645, 8901, 9156, 9281
  498. X      };
  499. X      short int subbuffer263[100] = {
  500. X       9275, 9144, 8887, 8631, 8504, 8378,   64, 7856, 8752,    0,
  501. X        -16, 7116, 6986, 7493, 8887,   64, 7621, 9015,   64, 9029,
  502. X       7479,   64, 7237, 8005,   64, 8517, 9285,   64, 7223, 7991,
  503. X         64, 8503, 9271,    0,  -16, 7116, 6859, 7493, 7479,   64,
  504. X       7621, 7607,   64, 8901, 8887,   64, 9029, 9015,   64, 7109,
  505. X       8005,   64, 8517, 9413,   64, 7095, 9399, 9394, 9271,    0,
  506. X        -16, 7116, 6859, 7493, 7486, 7612, 7995, 8251, 8636, 8894,
  507. X         64, 7621, 7614, 7740, 7995,   64, 8901, 8887,   64, 9029,
  508. X       9015,   64, 7109, 8005,   64, 8517, 9413,   64, 8503, 9399,
  509. X          0,  -16, 7116, 6352, 6981, 6967,   64, 7109, 7095,   64
  510. X      };
  511. X      short int subbuffer264[100] = {
  512. X       8261, 8247,   64, 8389, 8375,   64, 9541, 9527,   64, 9669,
  513. X       9655,   64, 6597, 7493,   64, 7877, 8773,   64, 9157,10053,
  514. X         64, 6583,10039,    0,  -16, 7116, 6352, 6981, 6967,   64,
  515. X       7109, 7095,   64, 8261, 8247,   64, 8389, 8375,   64, 9541,
  516. X       9527,   64, 9669, 9655,   64, 6597, 7493,   64, 7877, 8773,
  517. X         64, 9157,10053,   64, 6583,10039,10034, 9911,    0,  -16,
  518. X       7116, 6987, 8133, 8119,   64, 8261, 8247,   64, 7493, 7360,
  519. X       7365, 8645,   64, 8254, 8766, 9149, 9275, 9274, 9144, 8759,
  520. X       7735,   64, 8766, 9021, 9147, 9146, 9016, 8759,    0,  -16,
  521. X       7116, 6605, 7237, 7223,   64, 7365, 7351,   64, 6853, 7749
  522. X      };
  523. X      short int subbuffer265[100] = {
  524. X         64, 7358, 7870, 8253, 8379, 8378, 8248, 7863, 6839,   64,
  525. X       7870, 8125, 8251, 8250, 8120, 7863,   64, 9157, 9143,   64,
  526. X       9285, 9271,   64, 8773, 9669,   64, 8759, 9655,    0,  -16,
  527. X       7116, 7241, 7877, 7863,   64, 8005, 7991,   64, 7493, 8389,
  528. X         64, 7998, 8510, 8893, 9019, 9018, 8888, 8503, 7479,   64,
  529. X       8510, 8765, 8891, 8890, 8760, 8503,    0,  -16, 7116, 7114,
  530. X       7619, 7493, 7489, 7619, 7748, 8005, 8389, 8772, 9026, 9151,
  531. X       9149, 9018, 8760, 8375, 7991, 7736, 7482, 7483, 7612, 7739,
  532. X       7610,   64, 8389, 8644, 8898, 9023, 9021, 8890, 8632, 8375,
  533. X         64, 8254, 9022,    0,  -16, 7116, 6479, 7109, 7095,   64
  534. X      };
  535. X      short int subbuffer266[100] = {
  536. X       7237, 7223,   64, 6725, 7621,   64, 6711, 7607,   64, 8773,
  537. X       8388, 8130, 7999, 7997, 8122, 8376, 8759, 9015, 9400, 9658,
  538. X       9789, 9791, 9666, 9412, 9029, 8773,   64, 8773, 8516, 8258,
  539. X       8127, 8125, 8250, 8504, 8759,   64, 9015, 9272, 9530, 9661,
  540. X       9663, 9538, 9284, 9029,   64, 7230, 7998,    0,  -16, 7116,
  541. X       6858, 8773, 8759,   64, 8901, 8887,   64, 9285, 7877, 7492,
  542. X       7362, 7361, 7487, 7870, 8766,   64, 7877, 7620, 7490, 7489,
  543. X       7615, 7870,   64, 8510, 8125, 7996, 7736, 7607,   64, 8510,
  544. X       8253, 8124, 7864, 7735, 7479, 7352, 7226,   64, 8375, 9271,
  545. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0
  546. X      };
  547. X      short int subbuffer267[100] = {
  548. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  549. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  550. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  551. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  552. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  553. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  554. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  555. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  556. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  557. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0
  558. X      };
  559. X      short int subbuffer268[100] = {
  560. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  561. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  562. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  563. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  564. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  565. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  566. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  567. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  568. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  569. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0
  570. X      };
  571. X      short int subbuffer269[100] = {
  572. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  573. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  574. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  575. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  576. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  577. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  578. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  579. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  580. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  581. X          0,    0,    0,    0,    0,    0,    0,    0,    0,    0
  582. X      };
  583. X
  584. X      short int subhersh0[176] = {
  585. X        841,  899,  845,  847,  840,  846,  841,  842, 2284, 2281,
  586. X        735,  843,  844,  841,  866,  868,  851,  850,  856,  841,
  587. X        900,  901,  902,  903,  904,  905,  906,  907, 2263, 2261,
  588. X       2262, 2264,  699,  714,  717,  733,  719, 2271,  734,  716,
  589. X        721,  722,  728,  725,  711,  724,  710,  720,  700,  701,
  590. X        702,  703,  704,  705,  706,  707,  708,  709,  712,  713,
  591. X       2241,  726, 2242,  715, 2273,  501,  502,  503,  504,  505,
  592. X        506,  507,  508,  509,  510,  511,  512,  513,  514,  515,
  593. X        516,  517,  518,  519,  520,  521,  522,  523,  524,  525,
  594. X        526, 2223,  729, 2224,  718,  729, 2249,  601,  602,  603,
  595. X        604,  605,  606,  607,  608,  609,  610,  611,  612,  613,
  596. X        614,  615,  616,  617,  618,  619,  620,  621,  622,  623,
  597. X        624,  625,  626, 2225,  723, 2226, 2246,  699,  527,  528,
  598. X        529,  530,  531,  532,  533,  534,  535,  536,  537,  538,
  599. X        539,  540,  541,  542,  543,  544,  545,  546,  547,  548,
  600. X        549,  550,  627,  628,  629,  630,  684,  632,  633,  685,
  601. X        635,  636,  637,  638,  639,  640,  641,  642,  643,  644,
  602. X        645,  646,  686,  648,  649,  650
  603. X      };
  604. X      short int subhersh1[176] = {
  605. X        841,  899,  845,  847,  840,  846,  841,  842, 2284, 2281,
  606. X        735,  843,  844,  841,  866,  868,  851,  850,  856,  841,
  607. X        900,  901,  902,  903,  904,  905,  906,  907, 2263, 2261,
  608. X       2262, 2264, 2199, 2214, 2217, 2275, 2274, 2271, 2272, 2216,
  609. X       2221, 2222, 2219, 2232, 2211, 2231, 2210, 2220, 2200, 2201,
  610. X       2202, 2203, 2204, 2205, 2206, 2207, 2208, 2209, 2212, 2213,
  611. X       2241, 2238, 2242, 2215, 2273, 2001, 2002, 2003, 2004, 2005,
  612. X       2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015,
  613. X       2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025,
  614. X       2026, 2223, 2236, 2224, 2218, 2236, 2249, 2101, 2102, 2103,
  615. X       2104, 2105, 2106, 2107, 2108, 2109, 2110, 2111, 2112, 2113,
  616. X       2114, 2115, 2116, 2117, 2118, 2119, 2120, 2121, 2122, 2123,
  617. X       2124, 2125, 2126, 2225, 2229, 2226, 2246, 2199, 2027, 2028,
  618. X       2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038,
  619. X       2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048,
  620. X       2049, 2050, 2127, 2128, 2129, 2130, 2184, 2132, 2133, 2185,
  621. X       2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143, 2144,
  622. X       2145, 2146, 2186, 2148, 2149, 2150
  623. X      };
  624. X      short int subhersh2[176] = {
  625. X        841,  899,  845,  847,  840,  846,  841,  842, 2284, 2281,
  626. X        735,  843,  844,  841,  866,  868,  851,  850,  856,  841,
  627. X        900,  901,  902,  903,  904,  905,  906,  907, 2263, 2261,
  628. X       2262, 2264, 2199, 2764, 2778, 2275, 2769, 2271, 2768, 2777,
  629. X       2771, 2772, 2773, 2775, 2761, 2774, 2760, 2770, 2750, 2751,
  630. X       2752, 2753, 2754, 2755, 2756, 2757, 2758, 2759, 2762, 2763,
  631. X       2241, 2776, 2242, 2765, 2273, 2051, 2052, 2053, 2054, 2055,
  632. X       2056, 2057, 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065,
  633. X       2066, 2067, 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075,
  634. X       2076, 2223, 2236, 2224, 2779, 2236, 2249, 2151, 2152, 2153,
  635. X       2154, 2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, 2163,
  636. X       2164, 2165, 2166, 2167, 2168, 2169, 2170, 2171, 2172, 2173,
  637. X       2174, 2175, 2176, 2225, 2229, 2226, 2246, 2199, 2027, 2028,
  638. X       2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038,
  639. X       2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048,
  640. X       2049, 2050, 2127, 2128, 2129, 2130, 2184, 2132, 2133, 2185,
  641. X       2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143, 2144,
  642. X       2145, 2146, 2186, 2148, 2149, 2150
  643. X      };
  644. X      short int subhersh3[176] = {
  645. X        841,  899,  845,  847,  840,  846,  841,  842, 2284, 2281,
  646. X        735,  843,  844,  841,  866,  868,  851,  850,  856,  841,
  647. X        900,  901,  902,  903,  904,  905,  906,  907, 2263, 2261,
  648. X       2262, 2264, 2199, 2764, 2778, 2275, 2769, 2271, 2768, 2777,
  649. X       2771, 2772, 2773, 2775, 2761, 2774, 2760, 2770, 2750, 2751,
  650. X       2752, 2753, 2754, 2755, 2756, 2757, 2758, 2759, 2762, 2763,
  651. X       2241, 2776, 2242, 2765, 2273, 2551, 2552, 2553, 2554, 2555,
  652. X       2556, 2557, 2558, 2559, 2560, 2561, 2562, 2563, 2564, 2565,
  653. X       2566, 2567, 2568, 2569, 2570, 2571, 2572, 2573, 2574, 2575,
  654. X       2576, 2223, 2236, 2224, 2779, 2236, 2249, 2651, 2652, 2653,
  655. X       2654, 2655, 2656, 2657, 2658, 2659, 2660, 2661, 2662, 2663,
  656. X       2664, 2665, 2666, 2667, 2668, 2669, 2670, 2671, 2672, 2673,
  657. X       2674, 2675, 2676, 2225, 2229, 2226, 2246, 2199, 2027, 2028,
  658. X       2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038,
  659. X       2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048,
  660. X       2049, 2050, 2127, 2128, 2129, 2130, 2184, 2132, 2133, 2185,
  661. X       2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143, 2144,
  662. X       2145, 2146, 2186, 2148, 2149, 2150
  663. X      };
  664. SHAR_EOF
  665. echo "extracting genlin.c"
  666. sed 's/^X//' << \SHAR_EOF > genlin.c
  667. X/* General line-drawing routine which takes line styles into account */
  668. X
  669. X#include "plplot.h"
  670. X#include "declare.h"
  671. X#include <math.h>
  672. X
  673. Xstatic int lastx=-100000, lasty=-100000;
  674. X
  675. Xvoid genlin(x1,y1,x2,y2)
  676. Xint x1,y1,x2,y2;
  677. X{
  678. X   int nx,ny;
  679. X   int modulo, incr, dx, dy, diax, diay, i, temp, x, y;
  680. X   int px, py, tstep;
  681. X
  682. X/* Check for solid line */
  683. X
  684. X   if (nms == 0) {
  685. X      grline(x1,y1,x2,y2);
  686. X      return;
  687. X   }
  688. X
  689. X/* Check if pattern needs to be restarted */
  690. X
  691. X   if (x1 != lastx || y1 != lasty) {
  692. X        curel = 0;
  693. X        pendn = 1;
  694. X        timecnt = 0;
  695. X        alarm = mark[curel];
  696. X        if (x1 == x2 && y1 == y2) grline(x1,y1,x2,y2);
  697. X   }
  698. X
  699. X   lastx = x1;
  700. X   lasty = y1;
  701. X
  702. X   if (x1 == x2 && y1 == y2) return;
  703. X
  704. X   nx = x2 - x1;
  705. X   ny = y2 - y1;
  706. X
  707. X   if (abs(ny) > abs(nx)) {
  708. X        modulo = abs(ny);
  709. X        incr   = abs(nx);
  710. X        dx     = 0;
  711. X        dy     = -1;
  712. X        if (ny > 0) dy = 1;
  713. X   }
  714. X   else {
  715. X        modulo = abs(nx);
  716. X        incr   = abs(ny);
  717. X        dx     = -1;
  718. X        if (nx > 0) dx = 1;
  719. X        dy     = 0;
  720. X   }
  721. X
  722. X   diax = -1;
  723. X   if (nx > 0) diax = 1;
  724. X   diay = -1;
  725. X   if (ny > 0) diay = 1;
  726. X
  727. X   temp = modulo/2;
  728. X   x = x1;
  729. X   y = y1;
  730. X   i = 1;
  731. X
  732. X/* Compute the timer step */
  733. X
  734. X   tstep = sqrt(pow((double)(abs(nx)*umx),2.)+
  735. X                   pow((double)(abs(ny)*umy),2.))/modulo;
  736. X
  737. Xloop:
  738. X   if (i > modulo) goto exit;
  739. X   i = i+1;
  740. X   temp = temp+incr;
  741. X   px = x;
  742. X   py = y;
  743. X   if (temp > modulo) {
  744. X          temp = temp-modulo;
  745. X          x = x + diax;
  746. X          y = y + diay;
  747. X   }
  748. X   else {
  749. X          x = x + dx;
  750. X          y = y + dy;
  751. X   }
  752. X   timecnt += tstep;
  753. X   if (timecnt >= alarm) {
  754. X          plupd();
  755. X          if (pendn == 0) grline(lastx,lasty,px,py);
  756. X          lastx = x;
  757. X          lasty = y;
  758. X   }
  759. X   goto loop;
  760. X
  761. Xexit:
  762. X   if (pendn != 0) grline(lastx,lasty,x,y);
  763. X   lastx = x2;
  764. X   lasty = y2;
  765. X}
  766. X
  767. X
  768. X
  769. SHAR_EOF
  770. echo "extracting global.c"
  771. sed 's/^X//' << \SHAR_EOF > global.c
  772. X/* Sets and gets global variables */
  773. X
  774. X#include "plplot.h"
  775. X#include "declare.h"
  776. X
  777. Xvoid glev(n)
  778. Xint *n;
  779. X{
  780. X      *n = level;
  781. X}
  782. X
  783. Xvoid slev(n)
  784. Xint n;
  785. X{
  786. X      level = n;
  787. X}
  788. X
  789. Xvoid gbase(x,y,xc,yc)
  790. Xfloat *x,*y,*xc,*yc;
  791. X{
  792. X      *x = base3x;
  793. X      *y = base3y;
  794. X      *xc = basecx;
  795. X      *yc = basecy;
  796. X}
  797. X
  798. Xvoid sbase(x,y,xc,yc)
  799. Xfloat x,y,xc,yc;
  800. X{
  801. X      base3x = x;
  802. X      base3y = y;
  803. X      basecx = xc;
  804. X      basecy = yc;
  805. X}
  806. X
  807. Xvoid gnms(n)
  808. Xint *n;
  809. X{
  810. X      *n = nms;
  811. X}
  812. X
  813. Xvoid snms(n)
  814. Xint n;
  815. X{
  816. X      nms = n;
  817. X}
  818. X
  819. Xvoid gdev(dev,term,gra)
  820. Xint *dev,*term,*gra;
  821. X{
  822. X      *dev = device;
  823. X      *term = termin;
  824. X      *gra = graphx;
  825. X}
  826. X
  827. Xvoid sdev(dev,term,gra)
  828. Xint dev,term,gra;
  829. X{
  830. X      device = dev;
  831. X      termin = term;
  832. X      graphx = gra;
  833. X}
  834. X
  835. Xvoid gcurr(ix,iy)
  836. Xint *ix,*iy;
  837. X{
  838. X      *ix = currx;
  839. X      *iy = curry;
  840. X}
  841. X
  842. Xvoid scurr(ix,iy)
  843. Xint ix,iy;
  844. X{
  845. X      currx = ix;
  846. X      curry = iy;
  847. X}
  848. X
  849. Xvoid gdom(xmin,xmax,ymin,ymax)
  850. Xfloat *xmin,*xmax,*ymin,*ymax;
  851. X{
  852. X      *xmin = domxmi;
  853. X      *xmax = domxma;
  854. X      *ymin = domymi;
  855. X      *ymax = domyma;
  856. X}
  857. X
  858. Xvoid sdom(xmin,xmax,ymin,ymax)
  859. Xfloat xmin,xmax,ymin,ymax;
  860. X{
  861. X      domxmi = xmin;
  862. X      domxma = xmax;
  863. X      domymi = ymin;
  864. X      domyma = ymax;
  865. X}
  866. X
  867. Xvoid grange(zscl,zmin,zmax)
  868. Xfloat *zscl,*zmin,*zmax;
  869. X{
  870. X      *zscl = zzscl;
  871. X      *zmin = ranmi;
  872. X      *zmax = ranma;
  873. X}
  874. X
  875. Xvoid srange(zscl,zmin,zmax)
  876. Xfloat zscl,zmin,zmax;
  877. X{
  878. X      zzscl = zscl;
  879. X      ranmi = zmin;
  880. X      ranma = zmax;
  881. X}
  882. X
  883. Xvoid gw3wc(dxx,dxy,dyx,dyy,dyz)
  884. Xfloat *dxx,*dxy,*dyx,*dyy,*dyz;
  885. X{
  886. X      *dxx = cxx;
  887. X      *dxy = cxy;
  888. X      *dyx = cyx;
  889. X      *dyy = cyy;
  890. X      *dyz = cyz;
  891. X}
  892. X
  893. Xvoid sw3wc(dxx,dxy,dyx,dyy,dyz)
  894. Xfloat dxx,dxy,dyx,dyy,dyz;
  895. X{
  896. X      cxx = dxx;
  897. X      cxy = dxy;
  898. X      cyx = dyx;
  899. X      cyy = dyy;
  900. X      cyz = dyz;
  901. X}
  902. X
  903. Xvoid gvpp(ixmin,ixmax,iymin,iymax)
  904. Xint *ixmin,*ixmax,*iymin,*iymax;
  905. X{
  906. X      *ixmin = vppxmi;
  907. X      *ixmax = vppxma;
  908. X      *iymin = vppymi;
  909. X      *iymax = vppyma;
  910. X}
  911. X
  912. Xvoid svpp(ixmin,ixmax,iymin,iymax)
  913. Xint ixmin,ixmax,iymin,iymax;
  914. X{
  915. X      vppxmi = ixmin;
  916. X      vppxma = ixmax;
  917. X      vppymi = iymin;
  918. X      vppyma = iymax;
  919. X}
  920. X
  921. Xvoid gspp(ixmin,ixmax,iymin,iymax)
  922. Xint *ixmin,*ixmax,*iymin,*iymax;
  923. X{
  924. X      *ixmin = sppxmi;
  925. X      *ixmax = sppxma;
  926. X      *iymin = sppymi;
  927. X      *iymax = sppyma;
  928. X}
  929. X
  930. Xvoid sspp(ixmin,ixmax,iymin,iymax)
  931. Xint ixmin,ixmax,iymin,iymax;
  932. X{
  933. X      sppxmi = ixmin;
  934. X      sppxma = ixmax;
  935. X      sppymi = iymin;
  936. X      sppyma = iymax;
  937. X}
  938. X
  939. Xvoid gclp(ixmin,ixmax,iymin,iymax)
  940. Xint *ixmin,*ixmax,*iymin,*iymax;
  941. X{
  942. X      *ixmin = clpxmi;
  943. X      *ixmax = clpxma;
  944. X      *iymin = clpymi;
  945. X      *iymax = clpyma;
  946. X}
  947. X
  948. Xvoid sclp(ixmin,ixmax,iymin,iymax)
  949. Xint ixmin,ixmax,iymin,iymax;
  950. X{
  951. X      clpxmi = ixmin;
  952. X      clpxma = ixmax;
  953. X      clpymi = iymin;
  954. X      clpyma = iymax;
  955. X}
  956. X
  957. Xvoid gphy(ixmin,ixmax,iymin,iymax)
  958. Xint *ixmin,*ixmax,*iymin,*iymax;
  959. X{
  960. X      *ixmin = phyxmi;
  961. X      *ixmax = phyxma;
  962. X      *iymin = phyymi;
  963. X      *iymax = phyyma;
  964. X}
  965. X
  966. Xvoid sphy(ixmin,ixmax,iymin,iymax)
  967. Xint ixmin,ixmax,iymin,iymax;
  968. X{
  969. X      phyxmi = ixmin;
  970. X      phyxma = ixmax;
  971. X      phyymi = iymin;
  972. X      phyyma = iymax;
  973. X}
  974. X
  975. Xvoid gsub(nx,ny,cs)
  976. Xint *nx,*ny,*cs;
  977. X{
  978. X      *nx = nsubx;
  979. X      *ny = nsuby;
  980. X      *cs = cursub;
  981. X}
  982. X
  983. Xvoid ssub(nx,ny,cs)
  984. Xint nx,ny,cs;
  985. X{
  986. X      nsubx = nx;
  987. X      nsuby = ny;
  988. X      cursub = cs;
  989. X}
  990. X
  991. Xvoid gumpix(ix,iy)
  992. Xint *ix,*iy;
  993. X{
  994. X      *ix = umx;
  995. X      *iy = umy;
  996. X}
  997. X
  998. Xvoid sumpix(ix,iy)
  999. Xint ix,iy;
  1000. X{
  1001. X      umx = ix;
  1002. X      umy = iy;
  1003. X}
  1004. X
  1005. Xvoid gatt(ifnt,icol)
  1006. Xint *ifnt,*icol;
  1007. X{
  1008. X      *ifnt = font;
  1009. X      *icol = colour;
  1010. X}
  1011. X
  1012. Xvoid satt(ifnt,icol)
  1013. Xint ifnt,icol;
  1014. X{
  1015. X      font = ifnt;
  1016. X      colour = icol;
  1017. X}
  1018. X
  1019. Xvoid gspd(xmin,xmax,ymin,ymax)
  1020. Xfloat *xmin,*xmax,*ymin,*ymax;
  1021. X{
  1022. X      *xmin = spdxmi;
  1023. X      *xmax = spdxma;
  1024. X      *ymin = spdymi;
  1025. X      *ymax = spdyma;
  1026. X}
  1027. X
  1028. Xvoid sspd(xmin,xmax,ymin,ymax)
  1029. Xfloat xmin,xmax,ymin,ymax;
  1030. X{
  1031. X      spdxmi = xmin;
  1032. X      spdxma = xmax;
  1033. X      spdymi = ymin;
  1034. X      spdyma = ymax;
  1035. X}
  1036. X
  1037. Xvoid gvpd(xmin,xmax,ymin,ymax)
  1038. Xfloat *xmin,*xmax,*ymin,*ymax;
  1039. X{
  1040. X      *xmin = vpdxmi;
  1041. X      *xmax = vpdxma;
  1042. X      *ymin = vpdymi;
  1043. X      *ymax = vpdyma;
  1044. X}
  1045. X
  1046. Xvoid svpd(xmin,xmax,ymin,ymax)
  1047. Xfloat xmin,xmax,ymin,ymax;
  1048. X{
  1049. X      vpdxmi = xmin;
  1050. X      vpdxma = xmax;
  1051. X      vpdymi = ymin;
  1052. X      vpdyma = ymax;
  1053. X}
  1054. X
  1055. Xvoid gvpw(xmin,xmax,ymin,ymax)
  1056. Xfloat *xmin,*xmax,*ymin,*ymax;
  1057. X{
  1058. X      *xmin = vpwxmi;
  1059. X      *xmax = vpwxma;
  1060. X      *ymin = vpwymi;
  1061. X      *ymax = vpwyma;
  1062. X}
  1063. X
  1064. Xvoid svpw(xmin,xmax,ymin,ymax)
  1065. Xfloat xmin,xmax,ymin,ymax;
  1066. X{
  1067. X      vpwxmi = xmin;
  1068. X      vpwxma = xmax;
  1069. X      vpwymi = ymin;
  1070. X      vpwyma = ymax;
  1071. X}
  1072. X
  1073. Xvoid gpixmm(x,y)
  1074. Xfloat *x,*y;
  1075. X{
  1076. X      *x = xpmm;
  1077. X      *y = ypmm;
  1078. X}
  1079. X
  1080. Xvoid spixmm(x,y)
  1081. Xfloat x,y;
  1082. X{
  1083. X      xpmm = x;
  1084. X      ypmm = y;
  1085. X}
  1086. X
  1087. Xvoid gwp(xscl,xoff,yscl,yoff)
  1088. Xfloat *xscl,*xoff,*yscl,*yoff;
  1089. X{
  1090. X      *xscl = wpxscl;
  1091. X      *xoff = wpxoff;
  1092. X      *yscl = wpyscl;
  1093. X      *yoff = wpyoff;
  1094. X}
  1095. X
  1096. Xvoid swm(xscl,xoff,yscl,yoff)
  1097. Xfloat xscl,xoff,yscl,yoff;
  1098. X{
  1099. X      wmxscl = xscl;
  1100. X      wmxoff = xoff;
  1101. X      wmyscl = yscl;
  1102. X      wmyoff = yoff;
  1103. X}
  1104. X
  1105. Xvoid gwm(xscl,xoff,yscl,yoff)
  1106. Xfloat *xscl,*xoff,*yscl,*yoff;
  1107. X{
  1108. X      *xscl = wmxscl;
  1109. X      *xoff = wmxoff;
  1110. X      *yscl = wmyscl;
  1111. X      *yoff = wmyoff;
  1112. X}
  1113. X
  1114. Xvoid swp(xscl,xoff,yscl,yoff)
  1115. Xfloat xscl,xoff,yscl,yoff;
  1116. X{
  1117. X      wpxscl = xscl;
  1118. X      wpxoff = xoff;
  1119. X      wpyscl = yscl;
  1120. X      wpyoff = yoff;
  1121. X}
  1122. X
  1123. Xvoid gdp(xscl,xoff,yscl,yoff)
  1124. Xfloat *xscl,*xoff,*yscl,*yoff;
  1125. X{
  1126. X      *xscl = dpxscl;
  1127. X      *xoff = dpxoff;
  1128. X      *yscl = dpyscl;
  1129. X      *yoff = dpyoff;
  1130. X}
  1131. X
  1132. Xvoid sdp(xscl,xoff,yscl,yoff)
  1133. Xfloat xscl,xoff,yscl,yoff;
  1134. X{
  1135. X      dpxscl = xscl;
  1136. X      dpxoff = xoff;
  1137. X      dpyscl = yscl;
  1138. X      dpyoff = yoff;
  1139. X}
  1140. X
  1141. Xvoid gmp(xscl,xoff,yscl,yoff)
  1142. Xfloat *xscl,*xoff,*yscl,*yoff;
  1143. X{
  1144. X      *xscl = mpxscl;
  1145. X      *xoff = mpxoff;
  1146. X      *yscl = mpyscl;
  1147. X      *yoff = mpyoff;
  1148. X}
  1149. X
  1150. Xvoid smp(xscl,xoff,yscl,yoff)
  1151. Xfloat xscl,xoff,yscl,yoff;
  1152. X{
  1153. X      mpxscl = xscl;
  1154. X      mpxoff = xoff;
  1155. X      mpyscl = yscl;
  1156. X      mpyoff = yoff;
  1157. X}
  1158. X            
  1159. Xvoid gchr(def,ht)
  1160. Xfloat *def,*ht;
  1161. X{
  1162. X      *def = chrdef;
  1163. X      *ht = chrht;
  1164. X}
  1165. X            
  1166. Xvoid schr(def,ht)
  1167. Xfloat def,ht;
  1168. X{
  1169. X      chrdef = def;
  1170. X      chrht = ht;
  1171. X}
  1172. X            
  1173. Xvoid gsym(def,ht)
  1174. Xfloat *def,*ht;
  1175. X{
  1176. X      *def = symdef;
  1177. X      *ht = symht;
  1178. X}
  1179. X            
  1180. Xvoid ssym(def,ht)
  1181. Xfloat def,ht;
  1182. X{
  1183. X      symdef = def;
  1184. X      symht = ht;
  1185. X}
  1186. X            
  1187. Xvoid gmaj(def,ht)
  1188. Xfloat *def,*ht;
  1189. X{
  1190. X      *def = majdef;
  1191. X      *ht = majht;
  1192. X}
  1193. X            
  1194. Xvoid smaj(def,ht)
  1195. Xfloat def,ht;
  1196. X{
  1197. X      majdef = def;
  1198. X      majht = ht;
  1199. X}
  1200. X            
  1201. Xvoid gmin(def,ht)
  1202. Xfloat *def,*ht;
  1203. X{
  1204. X      *def = mindef;
  1205. X      *ht = minht;
  1206. X}
  1207. X            
  1208. Xvoid smin(def,ht)
  1209. Xfloat def,ht;
  1210. X{
  1211. X      mindef = def;
  1212. X      minht = ht;
  1213. X}
  1214. X
  1215. SHAR_EOF
  1216. echo "extracting icnvrt.c"
  1217. sed 's/^X//' << \SHAR_EOF > icnvrt.c
  1218. X/* Coordinate transformations for plotting package */
  1219. X/* Convertion routines yielding an integer result  */
  1220. X
  1221. X#include "plplot.h"
  1222. X#include "declare.h"
  1223. X
  1224. X/* dcpc. converts device coordinates to physical coordinates */
  1225. X
  1226. Xint dcpcx(x)
  1227. Xfloat x;
  1228. X{
  1229. X      return(round(dpxoff + dpxscl * x));
  1230. X}
  1231. X
  1232. Xint dcpcy(y)
  1233. Xfloat y;
  1234. X{
  1235. X      return(round(dpyoff + dpyscl * y));
  1236. X}
  1237. X
  1238. X/* mmpc. converts millimetres from bottom left-hand corner to physical */
  1239. X/* coordinates */
  1240. X
  1241. Xint mmpcx(x)
  1242. Xfloat x;
  1243. X{
  1244. X      return(round(mpxoff + mpxscl * x));
  1245. X}
  1246. X
  1247. Xint mmpcy(y)
  1248. Xfloat y;
  1249. X{
  1250. X      return(round(mpyoff + mpyscl * y));
  1251. X}
  1252. X
  1253. X/* wcpc. converts world coordinates to physical coordinates */
  1254. X
  1255. Xint wcpcx(x)
  1256. Xfloat x;
  1257. X{
  1258. X      return(round(wpxoff + wpxscl * x));
  1259. X}
  1260. X
  1261. Xint wcpcy(y)
  1262. Xfloat y;
  1263. X{
  1264. X      return(round(wpyoff + wpyscl * y));
  1265. X}
  1266. X
  1267. SHAR_EOF
  1268. echo "extracting impress.c"
  1269. sed 's/^X//' << \SHAR_EOF > impress.c
  1270. X/* This file contains the IMPRESS device dependent subroutines for */
  1271. X/* use with plplot. */
  1272. X
  1273. X#include "plplot.h"
  1274. X#include <stdio.h>
  1275. X
  1276. X#define SET_HV_SYSTEM   0315
  1277. X#define OPBYTE1         031
  1278. X#define OPBYTE2         0140
  1279. X#define SET_ABS_H       0207
  1280. X#define SET_ABS_V       0211
  1281. X#define OPWORDH1        0
  1282. X#define OPWORDH2        150
  1283. X#define OPWORDV1        0
  1284. X#define OPWORDV2        150
  1285. X#define ENDPAGE         0333
  1286. X
  1287. Xstatic FILE *OutFile;
  1288. Xstatic int FirstClear=1;
  1289. X
  1290. X/* Open file.  Set up for graphics. */
  1291. Xvoid impini()
  1292. X{
  1293. X      char FileName[80];
  1294. X
  1295. X      printf("Enter file to receive imPress graphics commands. ");
  1296. X      scanf("%s",FileName);
  1297. X
  1298. X      if ((OutFile = fopen(FileName,"w")) == NULL)  {
  1299. X          printf("Error opening %s \n",FileName);
  1300. X          exit(1);
  1301. X      }
  1302. X      fprintf(OutFile,"@Document(Language ImPress, jobheader off)");
  1303. X      fprintf(OutFile,"%c%c",SET_HV_SYSTEM,OPBYTE1);
  1304. X      fprintf(OutFile,"%c%c%c",SET_ABS_H,OPWORDH1,OPWORDH2);
  1305. X      fprintf(OutFile,"%c%c%c",SET_ABS_V,OPWORDV1,OPWORDV2);
  1306. X      fprintf(OutFile,"%c%c",SET_HV_SYSTEM,OPBYTE2);
  1307. X}
  1308. X
  1309. X/* Sets the IMPRESS to text mode */
  1310. Xvoid imptex()
  1311. X{
  1312. X}
  1313. X
  1314. X/* Sets the IMPRESS to graphics mode */
  1315. Xvoid impgra()
  1316. X{
  1317. X}
  1318. X
  1319. X/* Form feed */
  1320. Xvoid impclr()
  1321. X{
  1322. X      if(FirstClear) 
  1323. X        FirstClear = 0;
  1324. X      else
  1325. X        fprintf(OutFile,"%c",ENDPAGE);
  1326. X}
  1327. X
  1328. X/* May put something here someday */
  1329. Xvoid impcol(colour)
  1330. Xint colour;
  1331. X{
  1332. X}
  1333. X
  1334. X#define CREATE_PATH   0346
  1335. X#define DRAW_PATH     0352
  1336. X#define OPTYPE        017
  1337. X#define COUNT1        0
  1338. X#define COUNT2        2
  1339. X
  1340. Xvoid implin(x1,y1,x2,y2)
  1341. Xint x1,y1,x2,y2;
  1342. X{
  1343. X      fprintf(OutFile,"%c%c%c",CREATE_PATH,COUNT1,COUNT2);
  1344. X      fprintf(OutFile,"%c%c%c%c",x1/256,x1%256,y1/256,y1%256);
  1345. X      fprintf(OutFile,"%c%c%c%c",x2/256,x2%256,y2/256,y2%256);
  1346. X      fprintf(OutFile,"%c%c",DRAW_PATH,OPTYPE);
  1347. X
  1348. X}
  1349. X      
  1350. X/* Close graphics file */
  1351. Xvoid imptid()
  1352. X{
  1353. X      fprintf(OutFile,"%c",ENDPAGE);
  1354. X      fclose(OutFile);
  1355. X}
  1356. SHAR_EOF
  1357. echo "extracting laserjetii.c"
  1358. sed 's/^X//' << \SHAR_EOF > laserjetii.c
  1359. X/* This file contains the Laser Jet II device dependent subroutines for */
  1360. X/* use with plplot. Only the 150 dpi mode is supported.  The others     */
  1361. X/* (75,100,300) should work by just changing the value of DPI and       */
  1362. X/* changing the values passed to setphy in DEVICE.f77                   */
  1363. X
  1364. X#include "plplot.h"
  1365. X#include <stdio.h>
  1366. X#include <stdlib.h>
  1367. X#include <string.h>
  1368. X#include <math.h>
  1369. X
  1370. X#define DPI      150            /* Resolution Dots per Inch */
  1371. X#define CURX     51
  1372. X#define CURY     61
  1373. X#define ESC      0x1b
  1374. X#define FF       0x0c
  1375. X#define XDOTS    1104           /* # dots across */
  1376. X#define YDOTS    1410           /* # dots down   */
  1377. X#define BPROW    XDOTS/8        /* # bytes across */
  1378. X#define NBYTES   BPROW*YDOTS    /* total number of bytes */
  1379. X
  1380. Xstatic FILE *OutFile;
  1381. X
  1382. X/* bitmap contains a pointer to an area of memory NBYTES in size */
  1383. Xstatic char *bitmap;
  1384. Xstatic int FirstClear=1;
  1385. X
  1386. X/* Opens the file for binary mode. */
  1387. X
  1388. Xvoid jetini()
  1389. X{
  1390. X  char FileName[80];
  1391. X
  1392. X  printf("Enter file name for LaserJet II graphics commands. ");
  1393. X  scanf("%s",FileName);
  1394. X
  1395. X  if((OutFile = fopen(FileName,"w")) == NULL) {
  1396. X   printf("Error opening %s \n",FileName);
  1397. X   exit(1);
  1398. X  }
  1399. X
  1400. X  /* Allocate storage for bit map matrix */
  1401. X  if((bitmap = (char *)calloc(NBYTES,sizeof(char))) == NULL)
  1402. X   printf("Out of memory in call to calloc \n");
  1403. X
  1404. X  /* Reset Printer */
  1405. X  fprintf(OutFile,"%cE",ESC);
  1406. X}
  1407. X
  1408. X/* Set JET to test mode */
  1409. Xvoid jettex()
  1410. X{
  1411. X  /* do nothing here */
  1412. X}
  1413. X
  1414. X/* Set JET to graphics mode */
  1415. Xvoid jetgra()
  1416. X{
  1417. X  /* Do nothing here */
  1418. X}
  1419. X
  1420. X/* Print out page */
  1421. Xvoid jetclr()
  1422. X{
  1423. X  int i,j;
  1424. X
  1425. X  if(FirstClear)
  1426. X    FirstClear=0;
  1427. X  else {
  1428. X    /* First move cursor to origin */
  1429. X    fprintf(OutFile,"%c*p%dX",ESC,CURX);
  1430. X    fprintf(OutFile,"%c*p%dY",ESC,CURY);
  1431. X
  1432. X    /* Then put Laser Printer in 150 dpi mode */
  1433. X    fprintf(OutFile,"%c*t%dR",ESC,DPI);
  1434. X    fprintf(OutFile,"%c*r1A",ESC);
  1435. X
  1436. X    /* Write out raster data */
  1437. X    for(j=0;j<YDOTS;j++){
  1438. X      fprintf(OutFile,"%c*b%dW",ESC,BPROW);
  1439. X      for(i=0;i<BPROW;i++)
  1440. X        putc(*(bitmap+i+j*BPROW),OutFile);
  1441. X    }
  1442. X
  1443. X    /* End raster graphics and send Form Feed */
  1444. X    fprintf(OutFile,"%c*rB",ESC);
  1445. X    fprintf(OutFile,"%c",FF);
  1446. X
  1447. X    /* Finally, clear out bitmap storage area */
  1448. X    memset(bitmap,'\0',NBYTES);
  1449. X  }
  1450. X}
  1451. X
  1452. X/* Change color */
  1453. Xvoid jetcol(colour)
  1454. Xint colour;
  1455. X{
  1456. X}
  1457. X
  1458. X/* Function to draw the line in the bitmap */
  1459. Xvoid jetlin(x1,y1,x2,y2)
  1460. Xint x1,y1,x2,y2;
  1461. X{
  1462. X int i;
  1463. X float length,fx,fy,dx,dy;
  1464. X void setpoint();
  1465. X length = (float)sqrt((double)((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)));
  1466. X if(length == 0.)
  1467. X   length = 1.;
  1468. X dx = (x2 - x1)/length;
  1469. X dy = (y2 - y1)/length;
  1470. X
  1471. X fx = x1;
  1472. X fy = y1;
  1473. X setpoint(x1,y1);
  1474. X setpoint(x2,y2);
  1475. X
  1476. X for(i=1;i<=(int)length;i++)
  1477. X  setpoint((int)(fx+=dx),(int)(fy+=dy));
  1478. X}
  1479. X
  1480. Xstatic char mask[8] = {'\200','\100','\040','\020','\010','\004','\002','\001'};
  1481. X
  1482. X/* Function to set a bit in the bitmap */
  1483. Xstatic void setpoint(x,y)
  1484. Xint x,y;
  1485. X{
  1486. X int index;
  1487. X index = x/8 + y*BPROW;
  1488. X *(bitmap+index) = *(bitmap+index) | mask[x%8];
  1489. X}
  1490. X
  1491. X/* Reset printer and close file */
  1492. Xvoid jettid()
  1493. X{
  1494. X  jetclr();
  1495. X  /* Reset Printer */
  1496. X  fprintf(OutFile,"%cE",ESC);
  1497. X  fclose(OutFile);
  1498. X  free((void *)bitmap);
  1499. X}
  1500. X
  1501. X
  1502. SHAR_EOF
  1503. echo "extracting lmkfile"
  1504. sed 's/^X//' << \SHAR_EOF > lmkfile
  1505. XSRCS = src/plabv.c src/pladv.c src/plbeg.c src/plbin.c src/plbox.c \
  1506. X       src/plccal.c src/plclr.c src/plcntr.c src/plcol.c src/plcont.c \
  1507. X       src/plcvec.c src/pldeco.c src/pldtik.c src/plend.c src/plenv.c \
  1508. X       src/plerrx.c src/plerry.c src/plerx1.c src/plery1.c src/plfont.c \
  1509. X       src/plform.c src/plgra.c src/plgspa.c src/plhist.c src/plhrsh.c \
  1510. X       src/pljoin.c src/pllab.c src/pllclp.c src/plline.c src/plmtex.c \
  1511. X       src/plnxtv.c src/plpoi1.c src/plpoin.c src/plptex.c src/plr135.c \
  1512. X       src/plr45.c src/plschr.c src/plsmaj.c src/plsmin.c src/plssym.c \
  1513. X       src/plstar.c src/plstik.c src/plstr.c src/plstrl.c src/plstyl.c \
  1514. X       src/plsvpa.c src/plsym.c src/plsym1.c src/pltext.c src/plvpor.c \
  1515. X       src/plvsta.c src/plwind.c src/plxtik.c src/plxybx.c src/plxytx.c \
  1516. X       src/plytik.c src/plzbx.c src/plztx.c src/pl3cut.c src/plbox3.c \
  1517. X       src/plgrid3.c src/plot3d.c src/plside3.c src/plt3zz.c src/plw3d.c \
  1518. X       src/define.c src/fatal.c src/fcnvrt.c src/genlin.c src/global.c \
  1519. X       src/icnvrt.c src/movphy.c src/movwor.c src/round.c src/setphy.c \
  1520. X       src/setpxl.c src/setsub.c src/stindex.c src/strpos.c src/xform.c \
  1521. X       src/impress.c src/laserjetii.c src/tektronix.c src/Amiga.c \
  1522. X       src/font01.c src/font02.c src/font03.c src/font04.c src/font05.c \
  1523. X       src/font06.c src/font07.c src/font08.c src/font09.c src/font10.c \
  1524. X       src/font11.c
  1525. X       
  1526. X# I had trouble using the lformat option of the list command here so I
  1527. X# moved the command needed to update the library into the exec file 
  1528. X# UpdateLib.  I also had trouble with the R option of lc (using 5.0) hence
  1529. X# the need for updating the library myself.  I have not tryed this option
  1530. X# with version 5.02.  
  1531. X
  1532. Xlib/plplot.lib: $(SRCS)
  1533. X   @makedir ram:pltemp
  1534. X   @echo "Compiling Updated Routines"
  1535. X   -@lc -oram:pltemp/ -b0 -iinclude $?
  1536. X   @echo "Updating Library"
  1537. X   @execute UpdateLib
  1538. X   @echo "Finished"
  1539. SHAR_EOF
  1540. echo "extracting movphy.c"
  1541. sed 's/^X//' << \SHAR_EOF > movphy.c
  1542. X/*      MOVE AND DRAW ROUTINES IN PHYSICAL COORDINATES                */
  1543. X/* Move to physical coordinates (x,y) */
  1544. X
  1545. X#include "plplot.h"
  1546. X
  1547. Xvoid movphy(x,y)
  1548. Xint x,y;
  1549. X{
  1550. X      scurr(x,y);
  1551. X}
  1552. X
  1553. X/* Draws to physical coordinates (x,y) */
  1554. X
  1555. Xvoid draphy(x,y)
  1556. Xint x,y;
  1557. X{
  1558. X      int currx, curry;
  1559. X      gcurr(&currx,&curry);
  1560. X      pllclp(currx,curry,x,y);
  1561. X} 
  1562. X
  1563. SHAR_EOF
  1564. echo "extracting movwor.c"
  1565. sed 's/^X//' << \SHAR_EOF > movwor.c
  1566. X/* MOVE AND DRAW ROUTINES IN WORLD COORDINATES */
  1567. X
  1568. X/* Move to world coordinates (x,y) */
  1569. X
  1570. X#include "plplot.h"
  1571. X
  1572. Xvoid movwor(x,y)
  1573. Xfloat x,y;
  1574. X{
  1575. X   scurr(wcpcx(x),wcpcy(y));
  1576. X}
  1577. X
  1578. X/* Draws to world coordinates (x,y) */
  1579. X
  1580. Xvoid drawor(x,y)
  1581. Xfloat x,y;
  1582. X{
  1583. X   int currx, curry;
  1584. X   gcurr(&currx,&curry);
  1585. X   pllclp(currx,curry,wcpcx(x),wcpcy(y));
  1586. X}
  1587. SHAR_EOF
  1588. echo "extracting pl3cut.c"
  1589. sed 's/^X//' << \SHAR_EOF > pl3cut.c
  1590. X/* Determines the point of intersection (cx,cy) between the line */
  1591. X/* joining (sx1,sy1) to (sx2,sy2) and the line joining */
  1592. X/* (su1,sv1) to (su2,sv2). */
  1593. X
  1594. X#include "plplot.h"
  1595. X
  1596. Xvoid pl3cut(sx1,sy1,sx2,sy2,su1,sv1,su2,sv2,cx,cy)
  1597. Xint sx1, sy1, sx2, sy2, su1, sv1, su2, sv2, *cx, *cy;
  1598. X{
  1599. X      int x21, y21, u21, v21, yv1, xu1, a, b;
  1600. X            
  1601. X      x21 = sx2 - sx1;
  1602. X      y21 = sy2 - sy1;
  1603. X      u21 = su2 - su1;
  1604. X      v21 = sv2 - sv1;
  1605. X      yv1 = sy1 - sv1;
  1606. X      xu1 = sx1 - su1;
  1607. X
  1608. X      a = x21 * v21 - y21 * u21;
  1609. X      if (a == 0) {
  1610. X        if (sx2 < su2) {
  1611. X          *cx = sx2;
  1612. X          *cy = sy2;
  1613. X        }
  1614. X        else {
  1615. X          *cx = su2;
  1616. X          *cy = sv2;
  1617. X        }
  1618. X        return;
  1619. X      }
  1620. X      else {
  1621. X        b = yv1 * u21 - xu1 * v21;
  1622. X        *cx = sx1 + (b * x21 + a/2) / a;
  1623. X        *cy = sy1 + (b * y21 + a/2) / a;
  1624. X      }
  1625. X}
  1626. SHAR_EOF
  1627. echo "extracting plabv.c"
  1628. sed 's/^X//' << \SHAR_EOF > plabv.c
  1629. X#include "plplot.h"
  1630. X
  1631. X/* Determines if point (px,py) lies above the line joining (sx1,sy1) to */
  1632. X/* (sx2,sy2). It only works correctly if sx1 <= px <= sx2  */
  1633. X
  1634. Xint plabv(px, py, sx1, sy1, sx2, sy2)
  1635. Xint px, py, sx1, sy1, sx2, sy2;
  1636. X{
  1637. X      int above;
  1638. X
  1639. X      if (py >= sy1 && py >= sy2) 
  1640. X        above = 1;
  1641. X      else if (py < sy1 && py < sy2)
  1642. X        above = 0;
  1643. X      else if ((sx2-sx1) * (py-sy1) > (px-sx1) * (sy2-sy1)) 
  1644. X        above = 1;
  1645. X      else
  1646. X        above = 0;
  1647. X
  1648. X      return(above);
  1649. X}
  1650. SHAR_EOF
  1651. echo "extracting pladv.c"
  1652. sed 's/^X//' << \SHAR_EOF > pladv.c
  1653. X/* Advance to subpage "page", or to the next one if "page" = 0 */
  1654. X
  1655. X#include "plplot.h"
  1656. X
  1657. Xvoid pladv(page)
  1658. Xint page;
  1659. X{
  1660. X      int cursub, nsubx, nsuby;
  1661. X      int device, termin, graphx;
  1662. X
  1663. X      int level;
  1664. X      glev(&level);
  1665. X      if (level < 1) fatal("Please call PLSTAR before calling PLADV.");
  1666. X      
  1667. X      gdev(&device,&termin,&graphx);
  1668. X      gsub(&nsubx,&nsuby,&cursub);
  1669. X      if (page > 0 && page <= nsubx*nsuby) 
  1670. X        cursub = page;
  1671. X      else if (page == 0) {
  1672. X        if (cursub == nsubx*nsuby) {
  1673. X          if (termin != 0) beepw();
  1674. X          plclr();
  1675. X          cursub = 1;
  1676. X        }
  1677. X        else
  1678. X          cursub = cursub + 1;
  1679. X      }
  1680. X      else
  1681. X        fatal("Invalid subpage number in PLADV.");
  1682. X
  1683. X      ssub(nsubx,nsuby,cursub);
  1684. X      setsub();
  1685. X}
  1686. X
  1687. SHAR_EOF
  1688. echo "End of archive 5 (of 7)"
  1689. # if you want to concatenate archives, remove anything after this line
  1690. exit
  1691.